package org.firefly.fx.service.common;

import java.util.List;

import org.springframework.web.socket.WebSocketSession;

/**
 * webSocket 会话服务类
 * @author firefly
 * 2014-10-15
 */
public interface IWebsocketSessionService {
	/**userId:websocketSession 根据用户id保存会话*/
	public void saveSession(String userId,WebSocketSession session);
	
	/**根据用户id删除session*/
	public void removeSession(String userId);
	
	/**删除session*/
	public void removeSession(WebSocketSession session);
	
	/**根据用户id发送信息*/
	public boolean sendMsgToUser(long userId,String msg);
	
	/**根据用户id发送信息*/
	public boolean sendMsgToUser(String userId,String msg);
	
	/**发送信息给所有在线用户*/
	public boolean sendMsgToUsers(String msg);
	
	/**在线用户数量*/
	public int onlineUsersCount();
	
	/**返回在线用户的id列表*/
	public List<Long> onlineUsers();
	
	/**判断是否在线*/
	public boolean isOnline(long userId);
	
	/**判断是否在线*/
	public boolean isOnline(String userId);
}
